18. Appendix A SmartSnippets DA1468x SDK structure

18.1. Directory structure

This section describes the structure of the directories of the SmartSnippets™ DA1468x SDK. The root directory contains the subfolders shown below. Each subdirectory is described in the following sections.

Table 53 SmartSnippets™ root directory structuree
Directory Subdirectory Description
DA1468x_SDK_BTLE_v_1.0.12.xxx binaries Executables.
  config Configuration file for the SmartSnippets DA168x SDK.
  doc Documentation.
  projects Project examples.
  sdk Software development kit.
  utilities Utilities (image creation, programming etc.).

18.2. Binaries directory

The Binaries directory contains the executable binaries of the Windows and Linux applications which are needed to generate the final image file and to interact with the Pro and Basic DK boards. Currently these binaries are in the binaries folder of the SmartSnippets™ DA1468x SDK:

Table 54 binary files inside SmartSnippets™ DA1468x SDK
Filename Notes
bin2image Utility for creating a bootable image from an executable raw binary (for Linux).
bin2image.exe Utility for creating a bootable image from an executable raw binary (for Windows).
cli_programmer Utility to download image file to ProDK development board (for Linux).
cli_programmer.exe Utility to download image file to ProDK development board (for Windows).
Libprogrammer.dll Utility which supports download/programming of image files to ProDK board (for Windows).
Libprogrammer.so Utility which supports download/programming of image files to ProDK board (for Linux).
mkimage Utility for creating a firmware image for SmartSnippets DA1468x SDK (for Linux).
mkimage.exe Utility for creating a firmware image for SmartSnippets DA1468x SDK (for Windows).

18.3. Config directory

The Config directory contains configuration files for the SmartSnippets™ DA1468x SDK

Table 55 Config folder
Documents Description
DA1468x_1.0.10_SDK_config Configuration file for the SmartSnippets DA1468x SDK.
Embsys DA1468x register definitions
ATTACH.launch Global debug configuration launcher
QSPI.launch Global debug configuration launcher
RAM.launch Global debug configuration launcher
studio_config SmartSnippets Studio configuration

18.4. Doc directory

The Doc directory shall contain all relevant documentation which makes sure the reader understands the set-up and can use the SmartSnippets™ DA1468x SDK version 1.0.12. At present the folder contains the following documents:

Table 56 Doc folder
Documents Description
Html folder, Doxygen SmartSnippets DA1468x SDK Documentation generated by Doxygen.
Installation_and_debugging_procedure The file presents steps which should be done by a user to properly run example demos from SDK.
Licensing License Agreement for the software.
sdk_eclipse_formatter.xml Coding style formatter description for Eclipse.
VERSION Version of the SmartSnippets DA1468x SDK.

18.5. Projects directory

18.5.1. dk_apps directory

The dk_apps directory contains a collection of sample projects which can run on the DA1468x family of devices. These projects all use the board support package which consists of all peripherals drivers, the RTOS, the BLE stack if applicable, etc. This will be described in more detail in a later section of this document. The following subfolders are present in the dk_apps directory.

Table 57 dk_apps directory structure
Directory Subdirectory Description
dk_apps ble_profiles Sample projects implementing BLE available profiles.
  demos Sample projects, such as standalone peripheral tests.
  features Contains projects that exhibit some basic features of the SmartSnippets DA1468x SDK.
  reference_designs Contains all reference design projects, which are out of scope of the SmartSnippets DA1468x SDK. As an exception, we include plt_fw in a form of a “reference design”.
  templates Several projects which offer templates for different device configurations such as support of a real-time terminal for easier debugging.

18.5.2. Host_apps directory

Table 58 Host App directory
Directory Subdirectory Description
host_apps Examples Includes usb_cdc_echo_test

18.5.3. SDK directory

The SDK directory is the central part of the complete SmartSnippets™ DA1468x SDK and contains the code and header files for BLE framework support, middleware components (such as e.g. audio, firmware upgrade and security toolboxes) as well as low-level drivers and adapter implementations. The directories are structured as shown in the tables below.

Table 59 SDK directory structure
Directory Subdirectory Description
sdk bsp Includes header and source files for board support package.
  Interfaces Includes header and source files for supported interfaces such as e.g. audio/crypto toolbox, BLE adapter, etc.
  Middleware Includes header and source files for supported middleware and services such as e.g. fw_upgrade and logging support.
Table 60 bsp directory structure
Directory Subdirectory Description
bsp adapters Contains projects for all supported adapters such as e.g. SPI, I2C and UART adapter.
  config Configuration header files.
  free_rtos Contains projects for FreeRTOS implementation.
  Include HW specific 14680 macros, structure and register definitions, interrupt priority definitions and low level API calls.
  memory Contains code for access QSPI flash when running in auto mode.
  misc Contains ROM symbol table.
  osal OS abstraction layer implementation, customized queue and resource management implementation.
  peripherals Low level drivers for all supported peripherals.
  startup Contains code for the initialisation of the ARM processor.
  system Contains power/clock manager code and header files.
  arm_license License agreement
Table 61 interfaces directory structure
Directory Subdirectory Description
interfaces audio Contains the PDM audio interface driver.
  ble Contains the implementation of the BLE framework.
  ble_services Contains sample implementations of the BLE services.
  ble_stack Contains a lower level BLE stack implementation library.
  ble_clients Contains sample BLE client implementations.
  crypto Empty.
  ftdf FTDF PHY test
  usb Contains the USB low level driver.
Table 62 middleware directory structure
Directory Subdirectory Description
middleware audio Empty.
  ble_net Empty.
  cli CLI service for the Dialog SmartSnippets DA1468x SDK.
  console Serial console service for the Dialog SmartSnippets DA1468x SDK.
  dgtl DGTL framework
  fw_upgrade Empty.
  ip_net Empty.
  logging Implementation of a thread safe, UART based logging module.
  mcif Monitor and Control I/F API.
  Monitoring FreeRTOS task monitoring tools
  rf_tools Contains project for the RF_tools.
  segger_tools Modules used to support SEGGER’s RTT and SystemView
  security Empty.

18.5.4. Utilities directory

The Utilities directory contains a collection of useful tools in source format – mostly to interact with the Pro and Basic DK boards. Table 63 below shows the content of this directory.

Table 63 Utilities directory structure
Directory Subdirectory Description
Utilities bin2image Utility for creating a bootable image from an executable raw binary.
  cli_programmer Command line interface programmer source code. For details please refer to Appendix A.
  mkimage Utility for creating a firmware image for SmartSnippets DA1468x SDK.
  Scripts Scripts for Windows and Linux for QSPI flash programming, Debugging with GDB, OTP patching, etc.
  nvparam Creates an image of NV Parameters which can be then written directly to proper partition on flash.